2021年大数据Spark(五):大环境搭建本地模式 Local |
您所在的位置:网站首页 › spark 图片 › 2021年大数据Spark(五):大环境搭建本地模式 Local |
环境搭建-Local Spark中有2类角色,一个是Master类似Namenode做管理 一个是Worker类似DataNode是干活的。 Local模式就是,以一个JVM进程,去模拟整个Spark的运行环境,就是讲Master和Worker角色以线程的形式运行在这个进程中。 ![]() 目前Spark最新稳定版本:2.4.x系列,官方推荐使用的版本,也是目前企业中使用较多版本,网址: https://github.com/apache/spark/releases http://spark.apache.org/downloads.html http://archive.apache.org/dist/spark/spark-2.4.5/ Spark 2.4.x依赖其他语言版本如下,其中既支持Scala 2.11,也支持Scala 2.12,推荐使用2.11。 ![]() Spark安装 将spark安装包【spark-2.4.5-bin-hadoop2.7.tgz】解压至【/export/server】目录: 解压软件包 tar -zxvf spark-2.4.5-bin-hadoop2.7.tgz 创建软连接,方便后期升级 ln -s /export/server/spark-2.4.5-bin-hadoop2.7 /export/server/spark 如果有权限问题,可以修改为root,方便学习时操作,实际中使用运维分配的用户和权限即可 chown -R root /export/server/spark-2.4.5-bin-hadoop2.7 chgrp -R root /export/server/spark-2.4.5-bin-hadoop2.7中各个目录含义如下: bin 可执行脚本 conf 配置文件 data 示例程序使用数据 examples 示例程序 jars 依赖 jar 包 python pythonAPI sbin 集群管理命令 yarn 整合yarn需要的东东 运行spark-shell开箱即用直接启动bin目录下的spark-shell: 进入Spark安装目录 cd /export/server/spark ##直接使用spark-shell,默认使用local[*] bin/spark-shell ## 或 bin/spark-shell --master local[2]spark-shell说明1.直接使用./spark-shell 表示使用local 模式启动,在本机启动一个SparkSubmit进程 2.还可指定参数 --master,如: spark-shell --master local[N] 表示在本地模拟N个线程来运行当前任务 spark-shell --master local[*] 表示使用当前机器上所有可用的资源 3.不携带参数默认就是 spark-shell --master local[*] 4.后续还可以使用--master指定集群地址,表示把任务提交到集群上运行,如 ./spark-shell --master spark://node01:7077,node02:7077 5.退出spark-shell 使用 :quit 本地模式启动spark-shell: 运行成功以后,有如下提示信息: ![]() 其中 创建SparkContext实例对象:sc SparkSession实例对象:spark 启动应用监控页面端口号:4040 初体验-读取本地文件1.准备数据 vim /root/words.txt hello me you her hello you her hello her hello2.执行WordCount val textFile = sc.textFile("file:///root/words.txt") val counts = textFile.flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _) counts.collect初体验-读取HDFS文件1.准备数据 上传文件到hdfs hadoop fs -put /root/words.txt /wordcount/input/words.txt 目录如果不存在可以创建 hadoop fs -mkdir -p /wordcount/input 结束后可以删除测试文件夹 hadoop fs -rm -r /wordcount2.执行WordCount val textFile = sc.textFile("hdfs://node1:8020/wordcount/input/words.txt") val counts = textFile.flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _) counts.collect counts.saveAsTextFile("hdfs://node1:8020/wordcount/output")查看文件内容 hadoop fs -text /wordcount/output/part*监控页面每个Spark Application应用运行时,启动WEB UI监控页面,默认端口号为4040, 可以使用浏览器打开页面, http://node1:4040/jobs/ ![]() |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |